#ifndef MUSIC_H
#define MUSIC_H

#include <string>
#include <vector>
#include <sys/types.h> // 用于pid_t
using namespace std;

class LocalMusicPlayer {
private:
    string musicDir;       // 音乐文件存放目录
    vector<string> mp3Files; // 目录中所有MP3文件路径
    pid_t playPid;              // 当前播放进程的PID

    // 遍历目录，收集所有.mp3文件
    void loadMp3Files();

public:
    // 构造函数：传入音乐目录
    LocalMusicPlayer(const string& dir) : musicDir(dir), playPid(0) {
        loadMp3Files(); // 初始化时加载MP3文件列表
    }

    // 随机播放一首本地MP3（先停止当前播放）
    void playRandom();

    // 停止当前播放
    void stop();

    // 检查是否正在播放
    bool isPlaying() const { return playPid != 0; }
};

#endif